package chd.edu.spzx.order.mapper;

import chd.edu.spzx.model.entity.order.OrderInfo;
import chd.edu.spzx.model.entity.order.OrderItem;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @author Zhang Chaoliang
 * create 2023
 */
@Mapper
public interface OrderInfoMapper {

    /**
     * 添加数据到 order_info 表
     * @param orderInfo
     */
    void save(OrderInfo orderInfo);

    /**
     * 获取订单信息
     * @param orderId
     * @return
     */
    OrderInfo getById(Long orderId);

    /**
     * 根据userId和订单状态进行查询
     * @param userId
     * @param orderStatus
     * @return
     */
    List<OrderInfo> findUserPage(Long userId, Integer orderStatus);

    /**
     * 根据订单编号获取订单信息 —— 远程调用
     * @param orderNo
     * @return
     */
    OrderInfo getOrderInfoByOrderNo(String orderNo);

    /**
     * 更新订单状态
     * @param orderInfo
     */
    void updateById(OrderInfo orderInfo);
}
